home *** CD-ROM | disk | FTP | other *** search
/ CD Ware Multimedia 1995 May / cd Ware (Juegos) Epimundo.iso / DOS / PRGMMING / M2PROTOS.ZIP / READ.ME < prev    next >
Encoding:
Text File  |  1991-02-09  |  3.7 KB  |  99 lines

  1.         Modula-2 code for seven communication protocols
  2.  
  3.     This package contains JPI TopSpeed Modula-2 code that I have 
  4. developed for these error-checking protocols: XModem, XModem-1K, 
  5. YModem, Telink, ZModem, CompuServe B Plus, Kermit.
  6.     While I assembled them, I cannot by any means take credit 
  7. for the whole job.  I studied and in many cases borrowed code 
  8. from other sources; this is especially the case for the 
  9. CompuServe B-Plus protocol, which is largely derived from Russ 
  10. Ranshaw's Turbo Pascal source.
  11.     I assembled all of these modules for my own communications 
  12. program, QC, which runs on the DEC Rainbow 100 computer.  But 
  13. the purpose of this package is to make the protocol code 
  14. available in as generic a form as possible, so I am excluding 
  15. any Rainbow-specific code, leaving only the definition modules 
  16. that you will need to write your own code.  I am, however, 
  17. including some of the more generic libraries of code used by 
  18. these protocols.
  19.  
  20.     First the generic libraries:
  21. FIOASM.A      These are generic MS-DOS File IO libraries.
  22. FIOASM.DEF    I used assembly code to make them faster than 
  23. NFIO.DEF      JPI's libraries.  NFIO is abridged to include 
  24. NFIO.MOD      only the procedures used by the other modules
  25.               in this package
  26.  
  27. CRC.A         This module computes cyclic redundancy checks 
  28. CRC.DEF       and check sums for blocks of data.
  29.  
  30. MISCASM.DEF   These are a bunch of INLINE procedures.  No
  31.               implementation module is necessary in JPI TopSpeed 
  32.               Modula-2, version 2.
  33.  
  34. PATHFIND.DEF  Procedures for finding and parsing file names.
  35. PATHFIND.MOD  One procedure, FileTree, creates a directory of 
  36.               file names in the form of a linked list.
  37.  
  38. UTIL.DEF      Definitions of strings and character sets.
  39.               No implementation module required
  40.  
  41. You'll have to write these yourself:
  42. COM.DEF       Low-level communication procedures
  43. QCCOMM.DEF    Higher level communication procedures
  44. QCDISP.DEF    Data display procedures
  45. QCSHELL.DEF   Procdures involving shelling to DOS for CompuServe 
  46.               GIF transfers.
  47. TIMER.DEF     Low-level timers and a Delay procedure. (If you
  48.               are programming for IBM compatibles, you can use 
  49.               JPI's Lib.Delay.)
  50.  
  51. Here are the protocols themselves:
  52.  
  53. QCBPLUS.DEF   CompuServe B Plus.  Includes GIF files.
  54. QCBPLUS.MOD
  55.  
  56. QCKERMIT.DEF  Kermit
  57. QCKERMIT.MOD
  58. QCKPACK.DEF   Low-level Kermit procedures
  59. QCKPACK.MOD
  60.  
  61. QCXM.DEF      XModem, XModem-1K, YModem, Telink
  62. QCXM.MOD
  63. QCXMZERO.DEF  "Zero-block" handling for YModem, Telink, ZModem
  64. QCXMZERO.MOD
  65.  
  66. QCZM.DEF      ZModem
  67. QCZM.MOD
  68.  
  69. Finally a protocol handler:
  70. QCPROTO.DEF   This package processes common requests to upload 
  71. QCPROTO.MOD   or download files for all except CompuServe B 
  72.               Plus.
  73.  
  74.     -- For downloads, it asks which directory to put the files in.
  75.  
  76.     -- For uploads, it constructs a linked directory.  It does 
  77.     so with this prompt:
  78.  
  79.     'Enter file(s) to send or "/" + batch list file or Return to abort:'
  80.  
  81.          If the user enters an ordinary file name, it is treated 
  82.          as a file mask; for example, *.ZIP would create a linked 
  83.          list of all .ZIP files.
  84.  
  85.          A file name preceded by a slash is interpreted as a batch 
  86.          file, an ASCII file listing the files to be sent. 
  87.          File names in the list file can include wild cards.
  88.  
  89.     I'm giving all this stuff away.  If its helpful to you, great. If 
  90. I made some mistakes, consider it a challenge to find the bugs.  If you 
  91. need to reach me, I've tried to include my name and address in all the 
  92. code.  Here it is:
  93.  
  94. Carl Neiburger
  95. 169 N. 25th St.
  96. San Jose, Calif. 95116
  97.  
  98. CompuServe No. 72336,2257
  99.